package tec;

class TestPassagerStresse extends TestPassagerAbstrait{

    protected PassagerAbstrait creerPassager(String nom, int destination){
	return new PassagerStresse(nom, destination);	
    }

    void testChoixChangerPlace(){
	FauxBus f = new FauxBus();
	f.status = FauxBus.DEBOUT;
	PassagerStresse ps = new PassagerStresse("passager1", 5);
	
	// pas encore 3 arrets avant destination
	ps.choixChangerPlace(f, 1);
	assert 0 == f.messages.size() : "inferieur a 3 arret avant destination";
	
	// à 3 arret de la destination 
	ps.choixChangerPlace(f, 2);
	assert "demanderPlaceDebout" == f.messages.getLast() : "3 arret avant destination";
	
    }

    void testChoixPlaceMontee(){
	FauxBus f = new FauxBus();
	PassagerStresse ps = new PassagerStresse("passager1", 5);

	ps.choixPlaceMontee(f);
	assert "demanderPlaceAssise" == f.messages.getLast() : "monte dans bus";
    }


    void lancer() {
	int nbTest = 0;
	
	super.lancer();

	System.out.print('.'); nbTest++;
	testChoixChangerPlace();
	
	System.out.print('.'); nbTest++;
	testChoixPlaceMontee();	
	
	System.out.println("(" + nbTest + "):OK: " + getClass().getName()); 
    }
}
